timsort: Actually 0-terminate the array in get_runs()
authorBenjamin Otte <otte@redhat.com>
Wed, 22 Jul 2020 16:59:22 +0000 (18:59 +0200)
committerBenjamin Otte <otte@redhat.com>
Wed, 22 Jul 2020 16:59:22 +0000 (18:59 +0200)
This could cause SEGVs when changing the sort during an ongoing sort
operation.

gtk/gtktimsort.c

index 548bb292b595a2529c93351cd28513ecb90649be..f3595b01bc7b5866d2285a9a7824d7c6d9a4a586 100644 (file)
@@ -206,6 +206,8 @@ gtk_tim_sort_get_runs (GtkTimSort *self,
 
   for (i = 0; i < self->pending_runs; i++)
     runs[i] = self->run[i].len;
+
+  runs[self->pending_runs] = 0;
 }
 
 /*<private>